package netty.io.demo.Buffer;

import java.nio.ByteBuffer;
import java.nio.charset.StandardCharsets;

public class Demo01 {
  public static void main(String[] args) {
    // 申请 1M 的缓存区
    // 这里是 申请 堆内存
    ByteBuffer buffer = ByteBuffer.allocate(1024);
    // 表示写入的文字
    String text = "hello world";
    
    // 将数据 写入 缓存buffer中
    buffer.put(text.getBytes());
    // 此时的位置是 写入的位置
    System.out.println(buffer.position());
    System.out.println(buffer.limit());
    // 缓存 buffer 容量
    System.out.println(buffer.capacity());
    
    // 从这里 转换为 读操作
    buffer.flip();
    byte[] bytes = new byte[11];
    buffer.get(bytes);
    System.out.println(new String(bytes, StandardCharsets.UTF_8));
  }
}
